The representation of numbers in data processing systems, particularly non-integer numbers, requires the introduction of a decimal point into the notation. As one option, data processing systems may employ "fixed point notation" wherein the decimal point is placed immediately to the right of the least significant digit or placed immediately to the right of the signed bit before the first information bit.
A further option is called "floating point notation" in which the number is represented by a sign, an exponent, and a mantissa. Such technique is described in many texts, one example being "Computer Architecture", Caxton C. Foster, Van Nostrand Rheinhold Company, New York, N.Y., 1976, pp. 16 et seq.
Floating point processing units tend to become relatively complex when designed for use for large decimal ranges and increased precision capabilities. One technique which provides for a relatively good degree of flexibility and good accuracy, using some simplification of conventionally used floating point architecture, is described in Canadian Pat. No. 1,105,065, issued Aug. 2, 1977, to Richard T. MacAndrew. Such architecture is designed for shifting first and second operands, such operands having first and second mantissa and exponent values, respectively, for performing arithmetic operations. Arithmetic logic means and register means are provided for generating a preselected scale factor, to denote operand shifting requirements. Scaler means therein are connected for selectively loading the registers in serial fashion in a first direction and for scaling an operand input in response to the preselected scale factor. Switch means are utilized for selectively connecting the register to the scaler means for serially writing out of the selected register in the first direction.
While the system shown in the above-referenced Canadian patent has a capability for performing rapid and convenient arithmetic operations on a large range of numbers with a relatively high degree of precision, the speed of the mantissa multiplication operation, which is accomplished on a bit-by-bit basis, is slower than desired and it is helpful to provide for a higher speed multiplication operation, particularly in data processing systems where high speed operations are generally becoming more and more important.